package com.niguang.work.labour.api.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 'work.v_personSite' is not BASE TABLE
 * </p>
 *
 * @author 83673
 * @since 2018-11-17
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("work_clock")
public class Clock extends Model<Clock> {

    public static final String ID = "id";
    public static final String SITE_ID = "site_id";
    public static final String SUB_ID = "sub_id";
    public static final String USER_ID = "user_id";
    public static final String CLOCK_TYPE = "clock_type";
    public static final String CREATE_TIME = "create_time";
    public static final String SYS_CREATE_TIME = "sys_create_time";
    public static final String DEL_FLAG = "del_flag";
    public static final String WORK_TYPE_ID = "work_type_id";
    public static final String VALID_FLAG = "valid_flag";
    public static final String CONFIRM_FLAG = "confirm_flag";
    public static final String PUSH_FLAG = "push_flag";
    public static final String MAC_ID = "mac_id";
    public static final String TEAM_ID = "team_id";
    public static final String CHECK_FLAG = "check_flag";
    public static final String REMARK = "remark";
    private static final long serialVersionUID = 1L;
        /**
     * 打卡id
     */
         private Long id;
    private Long siteId;
    private Long subId;
    private Long userId;
        /**
     * 打卡类型,1-上班卡,2-下班卡
     */
         private Boolean clockType;
        /**
     * 上下班打卡时间
     */
         @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;
        /**
     * 系统创建时间
     */
         private LocalDateTime sysCreateTime;
        /**
     * 删除标识
     */
         private Boolean delFlag;
        /**
     * 工种 ID
     */
         private Long workTypeId;
        /**
     * 有效打卡 0.无效,1.有效
     */
         private Boolean validFlag;
        /**
     * 工时是否确认 0-未确认 1-已确认 2-已修改
     */
         private Boolean confirmFlag;
        /**
     * 推送标识 0--未推送 1--已推送
     */
         private Boolean pushFlag;
        /**
     * 设备ID
     */
         private String macId;
        /**
     * 班组ID
     */
         private Long teamId;
        /**
     * 1--卡片打卡，2--人脸打卡 3--二维码打卡 4-补签打卡
     */
         private Boolean checkFlag;
        /**
     * 备注
     */
         private String remark;

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
